Method and system for synchronizing play position between main player and companion devices and providing value added services

ABSTRACT

A companion device for use with a server device, a media device and a display device, the server device having stored therein a metadata manifest including metadata and time data associated with content and being configured to transmit the metadata manifest, the media device being configured to provide the content and content timing information to the display device, the display device being configured to display media, the content timing information being additionally associated with the time data, the companion device comprising: a memory having instructions stored therein; and a processor configured to execute the instructions stored in the memory to cause the companion device to: receive the content timing information from the media device; transmit a manifest request to the server device based on the content timing information; receive the metadata manifest from the server device; and instruct the display to display an icon based on the metadata.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application claims priority to U.S. Provisional App. No.63/351,765 filed Jun. 13, 2022, the contents of which are eachincorporated herein by reference in their entirety.

BACKGROUND

Embodiments of the invention relate to viewing content on a display andusing a companion device for supplemental content.

SUMMARY

Aspects of the present invention are drawn to a companion device for usewith a server device, a media device and a display device, the serverdevice having stored therein a metadata manifest including metadata andtime data associated with content and being configured to transmit themetadata manifest, the media device being configured to provide thecontent to the display device and to provide content timing informationassociated with the content, the display device being configured todisplay media based on the content, the content timing information beingadditionally associated with the time data, the companion deviceincluding: a memory having instructions stored therein; and a processorconfigured to execute the instructions stored in the memory to cause thecompanion device to: receive the content timing information from themedia device; transmit a manifest request to the server device based onthe content timing information; receive the metadata manifest from theserver device; and instruct the display to display an icon based on themetadata.

In some embodiments, the processor is configured to execute instructionsstored in the memory to cause the companion device to receive thecontent timing information from the media device as one type of contenttiming information selected from a group of content timing informationconsisting of a presentation time stamp, a playback timer, a wall timer,and combinations thereof.

In some embodiments, the companion device further includes a display,wherein the processor is configured to execute instructions stored inthe memory to cause the companion device to: receive the metadatamanifest from the server device so as to include a plurality of timestamp sections; and instruct the display to display the icon based onthe metadata, and to display a second icon based on the metadata.

In some embodiments, the companion device further includes a display,wherein the processor is configured to execute instructions stored inthe memory to cause the companion device to instruct the display todisplay an icon based on the metadata.

In some embodiments, the processor is configured to execute instructionsstored in the memory to cause the companion device to wirelesslytransmit the manifest request to the server device.

In some embodiments, the processor is configured to execute instructionsstored in the memory to cause the companion device to transmit themanifest request to the server device via a wired communication channel.

Other aspects of the present invention are drawn to a method ofoperating a companion device for use with a server device, a mediadevice and a display device, the server device having stored therein ametadata manifest including metadata and time data associated withcontent and being configured to transmit the metadata manifest, themedia device being configured to provide the content to the displaydevice and to provide content timing information associated with thecontent, the display device being configured to display media based onthe content, the content timing information being additionallyassociated with the time data, the method including: receiving, via aprocessor configured to execute instructions stored in a memory, thecontent timing information from the media device; transmitting, via theprocessor, a manifest request to the server device based on the contenttiming information; receiving, via the processor, the content timinginformation from the media device; transmitting, via the processor, amanifest request to the server device based on the content timinginformation; and receiving, via the processor, the metadata manifestfrom the server device.

In some embodiments, receiving the content timing information from themedia device includes receiving the content timing information from themedia device as one type of content timing information selected from agroup of content timing information consisting of a presentation timestamp, a playback timer, a wall timer, and combinations thereof.

In some embodiments, the method further includes: receiving the metadatamanifest from the server device so as to include a plurality of timestamp sections; and instructing a display to display the icon based onthe metadata, and to display a second icon based on the metadata.

In some embodiments, the method further includes instructing a displayto display an icon based on the metadata.

In some embodiments, the method, wherein the transmitting the manifestrequest to the server device, includes wirelessly transmitting themanifest request to the server device.

In some embodiments, the method, wherein the transmitting the manifestrequest to the server device, includes transmitting the manifest requestto the server device via a wired communication channel.

Other aspects of the present invention are drawn to a non-transitory,computer-readable media having computer-readable instructions storedthereon, the computer-readable instructions being capable of being readby a companion device for use with a server device, a media device and adisplay device, the server device having stored therein a metadatamanifest including metadata and time data associated with content andbeing configured to transmit the metadata manifest, the media devicebeing configured to provide the content to the display device and toprovide content timing information associated with the content, thedisplay device being configured to display media based on the content,the content timing information being additionally associated with thetime data, wherein the computer-readable instructions are capable ofinstructing the companion device to perform the method including:receiving, via a processor configured to execute instructions stored ina memory, the content timing information from the media device;transmitting, via the processor, a manifest request to the server devicebased on the content timing information; receiving, via the processor,the content timing information from the media device; transmitting, viathe processor, a manifest request to the server device based on thecontent timing information; and receiving, via the processor, themetadata manifest from the server device.

In some embodiments, the non-transitory, computer-readable media,wherein the computer-readable instructions are capable of instructingthe companion device to perform the method, wherein the receiving thecontent timing information from the media device includes receiving thecontent timing information from the media device as one type of contenttiming information selected from a group of content timing informationconsisting of a presentation time stamp, a playback timer, a wall timer,and combinations thereof.

In some embodiments, the non-transitory, computer-readable media,wherein the computer-readable instructions are capable of instructingthe companion device to perform the method, wherein the receiving themetadata manifest from the server device includes: receiving themetadata manifest from the server device as a plurality of time stampsections; and instructing a display to display the icon based on themetadata, and to display a second icon based on the metadata.

In some embodiments, the non-transitory, computer-readable media,wherein the computer-readable instructions are capable of instructingthe companion device to perform the method further including instructinga display to display an icon based on the metadata.

In some embodiments, the non-transitory, computer-readable media,wherein the computer-readable instructions are capable of instructingthe companion device to perform the method wherein the transmitting themanifest request to the server device includes wirelessly transmittingthe manifest request to the server device.

In some embodiments, the non-transitory, computer-readable media,wherein the computer-readable instructions are capable of instructingthe companion device to perform the method wherein the transmitting themanifest request to the server device includes transmitting the manifestrequest to the server device via a wired communication channel.

Aspects of the present invention are also drawn to a server device foruse with a metadata manifest provider and a companion device, themetadata manifest provider being configured to provide a metadatamanifest, the companion device being configured to provide a manifestrequest, the metadata manifest including metadata and time dataassociated with content, the manifest request including content timinginformation, the content timing information being associated with thetime data, the server device including: a memory having instructionsstored therein; and a processor configured to execute the instructionsstored in the memory to cause the server device to: receive the metadatamanifest; receive the manifest request; and transmit a portion of themetadata, based on the content timing information, to the companiondevice.

In some embodiments, the server device, wherein the content timinginformation includes one type of content timing information selectedfrom a group of content timing information consisting of a presentationtime stamp, a playback timer, a wall timer, and combinations thereof.

In some embodiments, the processor is configured to execute instructionsstored in the memory to cause the server device to wirelessly transmitthe portion of the metadata to the companion device.

In some embodiments, the processor is configured to execute instructionsstored in the memory to cause the server device to transmit the portionof the metadata to the companion device via a wired communicationchannel.

Other aspects of the present invention are drawn to a method ofoperating a server device with a metadata manifest provider and acompanion device, the metadata manifest provider being configured toprovide a metadata manifest, the companion device being configured toprovide a manifest request, the metadata manifest including metadata andtime data associated with content, the manifest request includingcontent timing information, the content timing information beingassociated with the time data, the method including: receiving, via aprocessor configured to execute instructions stored in a memory, thecontent timing information from the media device; receiving, via aprocessor configured to execute instructions stored in a memory, themetadata manifest; receiving, via the processor, the manifest request;and transmitting, via the processor, a portion of the metadata, based onthe content timing information, to the companion device.

In some embodiments, the method, wherein the content timing informationincludes one type of content timing information selected from a group ofcontent timing information consisting of a presentation time stamp, aplayback timer, a wall timer, and combinations thereof.

In some embodiments, the method, wherein the transmitting the portion ofthe metadata includes wirelessly transmitting the portion of themetadata to the server companion device.

In some embodiments, the method, wherein the transmitting the portion ofthe metadata includes transmitting the portion of the metadata to thecompanion device via a wired communication channel.

Other aspects of the present invention are drawn to a non-transitory,computer-readable media having computer-readable instructions storedthereon, the computer-readable instructions being capable of being readby server device for use with a metadata manifest provider and acompanion device, the metadata manifest provider being configured toprovide a metadata manifest, the companion device being configured toprovide a manifest request, the metadata manifest including metadata andtime data associated with content, the manifest request includingcontent timing information, the content timing information beingassociated with the time data, wherein the computer-readableinstructions are capable of instructing the server device to perform themethod including: receiving, via a processor configured to executeinstructions stored in a memory, the content timing information from themedia device; receiving, via a processor configured to executeinstructions stored in a memory, the metadata manifest; receiving, viathe processor, the manifest request; and transmitting, via theprocessor, a portion of the metadata, based on the content timinginformation, to the companion device.

In some embodiments, the non-transitory, computer-readable media,wherein the computer-readable instructions are capable of instructingthe server device to perform the method, wherein the content timinginformation includes one type of content timing information selectedfrom a group of content timing information consisting of a presentationtime stamp, a playback timer, a wall timer, and combinations thereof.

In some embodiments, the non-transitory, computer-readable media,wherein the computer-readable instructions are capable of instructingthe server device to perform the method, wherein the transmitting theportion of the metadata includes wirelessly transmitting the portion ofthe metadata to the server companion device.

In some embodiments, the non-transitory, computer-readable media,wherein the computer-readable instructions are capable of instructingthe server device to perform the method wherein the transmitting theportion of the metadata includes transmitting the portion of themetadata to the companion device via a wired communication channel.

BRIEF SUMMARY OF THE DRAWINGS

The accompanying drawings, which are incorporated in and form a part ofthe specification, illustrate example embodiments and, together with thedescription, serve to explain the principles of the invention. In thedrawings:

FIG. 1 illustrates a communication system in accordance with aspects ofthe present disclosure;

FIG. 2 illustrates an algorithm to be executed by a server device inaccordance with aspects of the present disclosure;

FIG. 3 illustrates an algorithm to be executed by a companion device inaccordance with aspects of the present disclosure;

FIG. 4 illustrates an exploded view of a server device, a media device,and a companion device in accordance with aspects of the presentdisclosure;

FIG. 5 illustrates a data stream in accordance with aspects of thepresent disclosure; and

FIG. 6 illustrates a companion device with a graphic user interface,which contains sample icons.

DETAILED DESCRIPTION

While watching a program on television, a user may want to knowadditional information related to a specific scene, personal informationabout an actor, or something else related to the program. Often, a userwill have a companion device which they will use to find the additionalinformation, non-limiting examples of a companion device including asmart phone, a tablet, etc. Taking time to pause the program to researchthis information can be frustrating. Conversely, a user could also letthe program continue to play as they research, but they may miss animportant part of the program as they focus on their companion device.

In some prior art systems, a service provider might add metadata intothe content being delivered to the media device of the user. Suchmetadata may include cast information, URL links to merchants topurchase goods shown in the content, etc. However, with these systems,the amount of metadata added throughout the content greatly increasesthe amount of data that needs to be encoded prior to transmission andthen decoded at reception at the media device of the user. Therefore,much more resources are required. Further, if the metadata changes, forexample for future broadcasts of the content, then the future contentmust be re-encoded with the new metadata.

There is a need for a mechanism where content consumption on thecompanion device is enhanced, thereby improving the playback experienceof the TV program, without drastically increasing the amount ofresources needed to encode/decode the content and metadata.

What is needed is a system and method for enhancing content consumptionthrough the use of a companion device without drastically increasing theamount of resources needed to encode/decode the content and metadata.

A system and method in accordance with the present disclosure enhancescontent consumption through the use of a companion device withoutdrastically increasing the amount of resources needed to encode/decodethe content and metadata.

In accordance with the present disclosure, a content delivery network(CDN) server provides content to a media device, for example a set-topbox at a user's home. For purposes of discussion, let the content be amovie. Further a manifest creator creates a metadata manifest thatassociates certain metadata to respective time periods of the movie. Forpurposes of discussion, let the metadata manifest include entries forevery 10 seconds of the movie, wherein each entry includes castinformation at that time period of the movie, URL links for merchantsthat sell clothing that the cast may be wearing at that time period ofthe movie, trick play instructions to enable to user to pause, rewind,fast forward, etc. The metadata manifest is stored on a server device.

The media device receives the content and plays the content for the userto watch. The user will also operate a companion device while watchingcontent. The media device, while providing content to the user throughthe use of a display device, will periodically provide the companiondevice with content timing information. The companion device willanalyze the content timing information and will request a metadatamanifest from the server device. The server device will transmit themetadata manifest to the companion device based on the content timinginformation. The companion device will then display interactive iconsvia a graphic user interface (GUI) to the user. These icons will allowthe user to interact with information related to the content they arewatching.

Therefore, as opposed to prior art systems wherein the metadata must betransmitted with the content, and decoded by the media device, inaccordance with aspects of the present disclosure, the heavy lifting ofstoring and transmitting the metadata to the companion device is handledby the server device. As such, much less resources are used by the mediodevice, which merely needs to transmit content timing information. Aswill be described in greater detail below, in an example embodiment, thecontent timing information is a presentation time stamp, which isreadily available in the content.

An example system and method for enhancing content consumption throughthe use of a companion device in accordance with aspects of the presentdisclosure will now be described in greater detail with reference toFIGS. 1-6 .

FIG. 1 illustrates a communication system 100 in accordance with aspectsof the present disclosure.

As shown in the figure, communication system 100 includes: a contentsource 102; an ad source 104; a multiplexer 106; a content deliverynetwork (CDN) server 108; a manifest creator 110; a server device 112; aservice provider 114; a wide area network (WAN) 116, for example theInternet; a cellular network 118; a media device 120; a display device122; a companion device 124; a local area network (LAN) 126; a user 128;and communication channels 130, 132, 134, 136, 138, 140, 142, 144, 146,148, 150, 152 and 154.

In this example, content source 102, ad source 104, multiplexer 106, CDNserver 108 and manifest creator 110 are illustrated as individualdevices. However, in some embodiments, at least two of content source102, ad source 104, multiplexer 106, CDN server 108 and manifest creator110 may be combined as a unitary device. Further, in some embodiments,at least one of content source 102, ad source 104, multiplexer 106, CDNserver 108 and manifest creator 110 may be implemented as a computerhaving tangible computer-readable media for carrying or havingcomputer-executable instructions or data structures stored thereon. Suchnon-transitory computer-readable recording medium refers to any computerprogram product, apparatus or device, such as a magnetic disk, opticaldisk, solid-state storage device, memory, programmable logic devices(PLDs), DRAM, RAM, ROM, EEPROM, CD-ROM or other optical disk storage,magnetic disk storage or other magnetic storage devices, or any othermedium that can be used to carry or store desired computer-readableprogram code in the form of instructions or data structures and that canbe accessed by a general-purpose or special-purpose computer, or ageneral-purpose or special-purpose processor. Disk or disc, as usedherein, includes compact disc (CD), laser disc, optical disc, digitalversatile disc (DVD), floppy disk and Blu-ray disc. Combinations of theabove are also included within the scope of computer-readable media. Forinformation transferred or provided over a network or anothercommunications connection (either hardwired, wireless, or a combinationof hardwired or wireless) to a computer, the computer may properly viewthe connection as a computer-readable medium. Thus, any such connectionmay be properly termed a computer-readable medium. Combinations of theabove should also be included within the scope of computer-readablemedia.

Example tangible computer-readable media may be coupled to a processorsuch that the processor may read information from and write informationto the tangible computer-readable media. In the alternative, thetangible computer-readable media may be integral to the processor. Theprocessor and the tangible computer-readable media may reside in anintegrated circuit (IC), an application specific integrated circuit(ASIC), or large scale integrated circuit (LSI), system LSI, super LSI,or ultra LSI components that perform a part or all of the functionsdescribed herein. In the alternative, the processor and the tangiblecomputer-readable media may reside as discrete components.

Example tangible computer-readable media may also be coupled to systems,non-limiting examples of which include a computer system/server, whichis operational with numerous other general purpose or special purposecomputing system environments or configurations. Examples of well-knowncomputing systems, environments, and/or configurations that may besuitable for use with computer system/server include, but are notlimited to, personal computer systems, server computer systems, thinclients, thick clients, handheld or laptop devices, multiprocessorsystems, microprocessor-based systems, set-top boxes, programmableconsumer electronics, network PCs, minicomputer systems, mainframecomputer systems, and distributed cloud computing environments thatinclude any of the above systems or devices, and the like.

Such a computer system/server may be described in the general context ofcomputer system-executable instructions, such as program modules, beingexecuted by a computer system. Generally, program modules may includeroutines, programs, objects, components, logic, data structures, and soon that perform particular tasks or implement particular abstract datatypes. Further, such a computer system/server may be practiced indistributed cloud computing environments where tasks are performed byremote processing devices that are linked through a communicationsnetwork. In a distributed cloud computing environment, program modulesmay be located in both local and remote computer system storage mediaincluding memory storage devices.

Components of an example computer system/server may include, but are notlimited to, one or more processors or processing units, a system memory,and a bus that couples various system components including the systemmemory to the processor.

The bus represents one or more of any of several types of busstructures, including a memory bus or memory controller, a peripheralbus, an accelerated graphics port, and a processor or local bus usingany of a variety of bus architectures. By way of example, and notlimitation, such architectures include Industry Standard Architecture(ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA)bus, Video Electronics Standards Association (VESA) local bus, andPeripheral Component Interconnects (PCI) bus.

A program/utility, having a set (at least one) of program modules, maybe stored in the memory by way of example, and not limitation, as wellas an operating system, one or more application programs, other programmodules, and program data. Each of the operating system, one or moreapplication programs, other program modules, and program data or somecombination thereof, may include an implementation of a networkingenvironment. The program modules generally carry out the functionsand/or methodologies of various embodiments of the application asdescribed herein.

In embodiments where multiplexer 106 is not a unitary device withcontent source 102, ad source 104, or CDN server 108, multiplexer 106 isarranged to communicate with content source 102 via a communicationchannel 130, to communicate with ad source 104 via a communicationchannel 132, and with CDN server 108 via a communication channel 134.Communication channels 130, 132 and 134 may be any known type of wiredor wireless communication channel.

In embodiments where CDN server 108 is not a unitary device withmanifest creator 110, CDN server 108 is additionally arranged tocommunicate with manifest creator 110 via a communication channel 136.CDN server 108 is additionally arranged to communicate with WAN 116 viaa communication channel 138. Communication channels 136 and 138 may beany known type of wired or wireless communication channel.

Manifest creator 110 is additionally arranged to communicate with WAN116 via a communication channel 140. Communication channel 140 may beany known type of wired or wireless communication channel.

WAN 116 is additionally arranged to communicate with server device 112via a communication channel 142, to communicate with service provider114 via a communication channel 144, and with cellular network 118 via acommunication channel 146. Communication channels 142, 144, and 146 maybe any known type of wired or wireless communication channel.

In this example, server device 112 and service provider 114 areillustrated as individual devices. However, in some embodiments, serverdevice 112 and service provider 114 may be combined as a unitary device.Further, in some embodiments, at least one of server device 112 andservice provider 114 may be implemented as a computer having tangiblecomputer-readable media for carrying or having computer-executableinstructions or data structures stored thereon. In embodiments whereserver device 112 and service provider 114 may be combined as a unitarydevice, WAN 116 may be arranged to communicate with the combined deviceby any known single communication channel.

Service provider 114 is additionally arranged to communicate with mediadevice 120 via a communication channel 119. Communication channel 119may be any known type of wired or wireless communication channel. Inembodiments wherein communication channel 119 is a wired communicationchannel, communication channel may take the form of a data over cableservice interface specification (DOCSIS) communication channel orpassive optical network (PONs) communication channel.

Media device 120 is additionally arranged to communicate with companiondevice 124 via a communication channel 150 and with display device 152via a communication channel. In this example, communication channel 150is a wireless communication channel provided by LAN 126, for examplethrough Wi-Fi. Communication channel 152 may be any known type of wiredor wireless communication channel.

Companion device 124 is additionally arranged to communicate withcellular network 118 via a wireless communication channel 154, forexample a cellular communication channel.

Content source 102 may be any device or system that is configured toprovide content data corresponding to content, for example a movie.

Ad source 104 may be any device or system that is configured to provideadvertisement data corresponding to advertisement to be inserted intothe content. The content data from content source 102 and theadvertisement data from ad source 104 are provided to multiplexer 106.

Multiplexer 106 may be any device or system that is configured tocombine content data from content source 102 and advertisement data fromad source 104 into modified content data 105 and to transmit modifiedcontent data 105 to CDN server 108.

CDN server 108 may be any device or system that is configured to delivermodified content data 105 to manifest creator 110.

Manifest creator 110 may be any device or system that is configured tocreate a metadata manifest of supplemental metadata. The metadatamanifest associates predetermined time periods within the modifiedcontent data 105 with respective supplemental metadata. Non-limitingexamples of supplemental metadata include links to purchase itemsavailable in advertisements, additional information about how a scenewas made, or additional information on an actor, etc. The predeterminedtime periods may be at: predetermined time slots as measured bypresentation time stamps (PTSs); predetermined time periods based onplay time of the content, for example every 10 seconds of playing time;or predetermined wall clock time periods based on the start of thecontent, for example every 10 seconds after the content startsplaying—to be differentiated from the play time of content which mightbe paused by the user.

The supplemental data is associated with a time value corresponding to atime of the content. Therefore, the supplemental data may be provided toa user when the program they are viewing reaches that time.

Manifest creator 110 may be any device or system that is additionallyconfigured to transmit the metadata manifest server device 112.

CDN server 108 may be any device or system that is additionallyconfigured to, after manifest creator 110 transmits the metadatamanifest to server device 112, deliver modified content data 105 toservice provider 114.

Server device 112 may be any device or system that is configured toreceive the metadata manifest from manifest creator 110, to store themetadata manifest, to receive a manifest request, and to subsequentlyprovide the metadata manifest upon receipt of the manifest request.

Service provider 114 may be any device or system that is configured toreceive modified content data 105 by way of communication channel 138,WAN 116 and communication channel 144. Service provider may be anydevice or system that is additionally configured to provide modifiedcontent data 105 to media device 120 via communication channel 148.Service provider 114 may be any device or system that is additionallyconfigured to provide access to WAN 116 from LAN 126. Service provider114 may be any device or system that is additionally configured toprovide content from CDN server 108 to media device 120 and manifestmetadata from manifest creator 110.

LAN 126 is created and managed through a gateway device not shown in thefigure. A gateway device serves as a gateway or access point to WAN 116for one or more electronic devices. LAN 126 is illustrated as a singlenetwork, merely for purposes of discussion. It should be noted that LAN126 may represent a plurality of local area networks created and managedthrough a gateway device. LAN 126 is a communication network whereconnected devices can wirelessly communicate to access WAN 116. As such,for purposes of this discussion, LAN 126 includes a wireless network forcompanion device 124 to wirelessly communicate with media device 120.

Media device 120 may be any device or system that is configured toreceive modified content data 105 from service provider 112 and todecode the modified content data 105 to obtain content timinginformation and content to be displayed on display device 122. Mediadevice 120 may be any device or system that is additionally configuredto transmit the content data to display device 122 to be viewed by user128. A non-limiting example of media device 120 is a set-top box. Mediadevice 120 may be any device or system that is additionally configuredto transmit the content timing information to companion device 124.

Media device 120 is arranged to communicate with other connected devicesin LAN 126. In some embodiments, user 128 may use companion device 124to instruct media device 120 to complete a task, a non-limiting exampleof which may include rewinding the content.

Display device 122 may be any device that is configured to present datareceived from media device 120 in visual and audio form.

Companion device 124 may be any device or system that is configured topresent content to, accept inputs from, or directly or indirectlyinteract with user 128. In this non-limiting example, companion device124 may be a smart phone, tablet, or personal computer. Companion device124 may be any device or system that is additionally configured totransmit a manifest request to service device 112 based on the contenttiming information received from media device 120.

In some embodiments, companion device 124 is configured to wirelesslytransmit the manifest request to service device 112 via wirelesscommunication channel 154, cellular network 118, communication channel146, WAN 116 and communication channel 142.

In some embodiments, companion device 124 is configured to transmit themanifest request to service device 112 via a wired communication channelthat includes a path via LAN 126 by way of communication channel 150 tomedia device 120, communication channel 148, service provider 114,communication channel 144, WAN 116, and communication channel 142.

Server device 112 may be any device or system that is additionallyconfigured to, in response to receiving the manifest request fromcompanion device 124, provide the metadata manifest to companion device124.

In some embodiments, server device 112 is configured to wirelesslytransmit the manifest metadata to companion device 124 via communicationchannel 142, WAN 116, communication channel 146, cellular network 118and wireless communication channel 154.

In some embodiments, server device 112 is configured to transmit themetadata manifest to companion device 124 via a wired communicationchannel that includes a path via communication channel 142, WAN 116,communication channel 144, service provider 114, communication channel119, and LAN 126.

The operation of server device 112 and companion device 124 will bedescribed using separate algorithms below.

FIG. 2 illustrates an algorithm 200 to be executed by server device 112in accordance with aspects of the present disclosure.

As shown in FIG. 2 , algorithm 200 starts (S202) and the metadatamanifest is received (S204). For example, presume that multiplexer 106has packaged content data from content source 102 and advertisement datafrom ad source 104 into modified content data 105, and provided modifiedcontent data 105 to CDN server 108, as referenced in FIG. 1 . CDN server108 provides modified content data 105 to manifest creator 110 viacommunication channel 136. Manifest creator 110 creates a metadatamanifest, which is associated with modified content data 105. Asdiscussed above the metadata manifest includes a plurality of timeentries of the modified content data 105, wherein each entry may haveassociated metadata, which may include cast information, advertisements,etc.

Manifest creator 110 will then transmit the metadata manifest to serverdevice 112 via wireless communication channel 140, WAN 116, and wirelesscommunication channel 142. Server device 112 then stores the metadatamanifest.

Returning to FIG. 2 , after the metadata manifest is received (S204),the metadata manifest is requested by the companion device (S206). Thiswill be described in greater detail with reference to FIG. 4 .

FIG. 4 illustrates an exploded view of server device 112, media device120, and companion device 124 in accordance with aspects of the presentdisclosure.

As shown in the figure, server device 112 includes: a controller 400; amemory 402, which has stored therein a meta data program 403; and aninterface 404.

In this example, controller 400, memory 402, and interface 404 areillustrated as individual devices. However, in some embodiments, atleast two of controller 400, memory 402, and interface 404 may becombined as a unitary device. Further, in some embodiments, at least oneof controller 400 and memory 402 may be implemented as a computer havingtangible computer-readable media for carrying or havingcomputer-executable instructions or data structures stored thereon.

Controller 400 may be implemented as a hardware processor such as amicroprocessor, a multi-core processor, a single core processor, a fieldprogrammable gate array (FPGA), a microcontroller, an applicationspecific integrated circuit (ASIC), a digital signal processor (DSP), orother similar processing device capable of executing any type ofinstructions, algorithms, or software for controlling the operation andfunctions of any client devices in the network in accordance with theembodiments described in the present disclosure.

Memory 402 has meta data program 403 stored therein. As will bedescribed in greater detail below, meta data program 403 hasinstructions stored therein to be executed by controller 400 to causeserver device to: receive the metadata manifest; receive a manifestrequest; and transmit a portion of the metadata, based on content timinginformation, to companion device 124.

In some embodiments, memory 402, as will be described in greater detailbelow, meta data program 403 has instructions stored therein to beexecuted by controller 400 to cause server device to transmit theportion of the metadata to companion device 124 via a wiredcommunication channel.

In some embodiments, memory 402, as will be described in greater detailbelow, meta data program 403 has instructions stored therein to beexecuted by controller 400 to cause server device to wirelessly transmitthe portion of the metadata to the companion device.

Interface 404 can include one or more connectors, such as RF connectors,or Ethernet connectors, and/or wireless communication circuitry, such as5G circuitry and one or more antennas.

As shown in FIG. 4 , media device 120 includes: a controller 410; amemory 412, which has stored therein a meta data program 413; a radio414; an interface 416; and a user interface (UI) 418.

In this example, controller 410, memory 412, radio 414, and interface416 are illustrated as individual devices. However, in some embodiments,at least two of controller 410, memory 412, radio 414, and interface 416may be combined as a unitary device. Further, in some embodiments, atleast one of controller 410 and memory 412 may be implemented as acomputer having tangible computer-readable media for carrying or havingcomputer-executable instructions or data structures stored thereon.

Controller 410 may be implemented as a hardware processor such as amicroprocessor, a multi-core processor, a single core processor, a fieldprogrammable gate array (FPGA), a microcontroller, an applicationspecific integrated circuit (ASIC), a digital signal processor (DSP), orother similar processing device capable of executing any type ofinstructions, algorithms, or software for controlling the operation andfunctions of extender 302 in accordance with the embodiments describedin the present disclosure.

Memory 412, as will be described in greater detail below, hasinstructions, including meta data program 413, stored therein to beexecuted by controller 410. Meta data program 413 includes instructionto be executed by controller 410 to cause the media device to: receivecontent from CDN server 108; provide content to display device 122; andprovide content timing information to companion device 124.

In some embodiments, the content timing information will be broadcast atintervals, non-limiting examples of which include 1 second intervals or10 second intervals. In some embodiments, the content timing informationmay be one type of content timing information selected from a group ofcontent timing information consisting of a presentation time stamp, aplayback timer, a wall timer, and combinations thereof. As will bedescribed in greater detail below, a presentation time stamp may beextracted from types of encoded content data. A playback timer may bederived from a start time of the content, and will not continue forexample, if the user pauses the content. A wall timer may be derivedfrom a start time of the content, and will continue if the user pausesthe content.

Radio 414 may include a Wi-Fi WLAN interface radio transceiver that isoperable to communicate with companion device 124. Radio 414 includesone or more antennas and communicate wirelessly via one or more of the2.4 GHz band, the 5 GHz band, the 6 GHz band, and the 6E GHz band, or atthe appropriate band and bandwidth to implement any IEEE 802.11 Wi-Fiprotocols, such as the Wi-Fi 4, 5, 6, or 6E protocols. Radio 414 canalso be equipped with a radio transceiver/wireless communication circuitto implement a wireless connection in accordance with any Bluetoothprotocols, Bluetooth Low Energy (BLE), or other short range protocolsthat operate in accordance with a wireless technology standard forexchanging data over short distances using any licensed or unlicensedband such as the CBRS band, 2.4 GHz bands, 5 GHz bands, 6 GHz bands or6E GHz bands, RF4CE protocol, ZigBee protocol, Z-Wave protocol, or IEEE802.15.4 protocol.

Companion device 124 includes: a controller 420; a memory 422, which hasstored thereon a metadata program 423; a radio 424; a cellular radio426; an interface 428; and a graphic user interface (GUI) 430.

In this example, controller 420, memory 422, radio 424, cellular radio426, and interface 428 are illustrated as individual devices. However,in some embodiments, at least two of controller 420, memory 422, radio424, cellular radio 426, and interface 428 may be combined as a unitarydevice. Further, in some embodiments, at least one of controller 420 andmemory 422 may be implemented as a computer having tangiblecomputer-readable media for carrying or having computer-executableinstructions or data structures stored thereon.

Controller 420 may be implemented as a hardware processor such as amicroprocessor, a multi-core processor, a single core processor, a fieldprogrammable gate array (FPGA), a microcontroller, an applicationspecific integrated circuit (ASIC), a digital signal processor (DSP), orother similar processing device capable of executing any type ofinstructions, algorithms, or software for controlling the operation andfunctions of gateway device 304 in accordance with the embodimentsdescribed in the present disclosure.

Memory 422 as will be described in greater detail below, hasinstructions, including meta data program 423, stored therein to beexecuted by controller 420. Meta data program 423 includes instructionsto be executed by controller 420 to cause the companion device to:receive the content timing information from media device 120; transmit amanifest request to server device 112 based on the content timinginformation; receive the metadata manifest from server device 112; andinstruct display device 122 to display an icon based on the metadata.

In some embodiments, as will be described in greater detail below, metadata program 423 has instructions stored therein to be executed bycontroller 420 to cause companion device 124 to: receive the contenttiming information from media device 120 as one type of content timinginformation selected from a group of content timing informationconsisting of a presentation time stamp, a playback timer, a wall timer,and combinations thereof.

In some embodiments, as will be described in greater detail below, metadata program 423 has instructions stored therein to be executed bycontroller 420 to cause companion device 124 to: receive the metadatamanifest from server device 112 so as to include a plurality of timestamp sections; and instruct display device 122 to display the iconbased on the metadata, and to display a second icon based on themetadata.

In some embodiments, as will be described in greater detail below, metadata program 423 has instructions stored therein to be executed bycontroller 420 to cause companion device 124 to instruct display device122 to display an icon based on the metadata.

In some embodiments, as will be described in greater detail below, metadata program 423 has instructions stored therein to be executed bycontroller 420 to cause companion device 124 to wirelessly transmit themanifest request to server device 112.

In some embodiments, as will be described in greater detail below, metadata program 423 has instructions stored therein to be executed bycontroller 420 to cause companion device 124 to transmit the manifestrequest to server device 112 via a wired communication channel.

Radio 424 may include a Wi-Fi WLAN interface radio transceiver that isoperable to communicate with media device 120. Radio 424 includes one ormore antennas and communicates wirelessly via one or more of the 2.4 GHzband, the 5 GHz band, the 6 GHz band, and the 6E GHz band, or at theappropriate band and bandwidth to implement any IEEE 802.11 Wi-Fiprotocols, such as the Wi-Fi 4, 5, 6, or 6E protocols. Radio 424 canalso be equipped with a radio transceiver/wireless communication circuitto implement a wireless connection in accordance with any Bluetoothprotocols, Bluetooth Low Energy (BLE), or other short range protocolsthat operate in accordance with a wireless technology standard forexchanging data over short distances using any licensed or unlicensedband such as the CBRS band, 2.4 GHz bands, 5 GHz bands, 6 GHz bands or6E GHz bands, RF4CE protocol, ZigBee protocol, Z-Wave protocol, or IEEE802.15.4 protocol.

Cellular radio 426 is configured to communicate with WAN 116 throughcellular network 118 via communication channel 154.

Interface 428 can include one or more connectors, such as RF connectors,or Ethernet connectors, and/or wireless communication circuitry, such as5G circuitry and one or more antennas. Interface 428 receives data fromservice provider 114 by known methods, non-limiting examples of whichinclude terrestrial antenna, satellite dish, wired cable, DSL, opticalfibers, or 5G as discussed above.

Returning to FIG. 2 , for example, presume that user 128 is watching afilm on display device 122. Further, user 128 would like to learn moreabout an actor that is in the film. User 128 may operate companiondevice 124 and interact with GUI 430. More specifically, controller 420of companion device 124 is configured to execute instructions stored onmemory 422, including meta data program 423, causing radio 424 toinstruct server device 112, via wireless communication channel 150,communication channel 148, service provider 114, communication channel144, WAN 116, and communication channel 142, to provide the metadatathat user 128 requested.

In some embodiments, companion device 124 may be a device utilizingcellular service, in which case user 128 may use companion device 124 tocommunicate with server device 112 cellularly. More specifically,controller 420 of companion device 124 is configured to executeinstructions stored on memory 422, including meta data program 423,causing cellular radio 426 to instruct server device 112, via wirelesscommunication channel 154, cellular network 118, wireless communicationchannel 146, WAN 116, and wireless communication channel 142, to providethe metadata manifest that user 128 requested.

Returning to FIG. 2 , after the metadata manifest is requested by thecompanion device (S206), the metadata is provided to the companiondevice (S208). For example, after server device 112 receives themetadata manifest request from companion device 124, controller 400 ofserver device 112 is configured to execute instructions stored on memory402, including meta data program 403, causing server device 112 totransmit, via wireless communication channel 115, service provider 114,and wireless communication channel 121, the metadata of the metadatamanifest that is associated with content timing information to companiondevice 124.

In some embodiments, server device 112 may transmit the metadata tocompanion device 124 via cellular network communication. Morespecifically, controller 400 of server device 112 is configured toexecute instructions stored on memory 402, including meta data program403, causing server device 112 to transmit the metadata to companiondevice 124, via communication channel 142, WAN 116, communicationchannel 146, cellular network 118, and wireless communication channel154.

Returning to FIG. 2 , after the metadata manifest is provided to thecompanion device (S208), algorithm 200 stops (S210).

In some embodiments, the metadata manifest may be continuously updatedand metadata from the continuously updated metadata manifest may beprovided to companion device 124, opposed to delivering the metadataonce, e.g., when user 128 is watching a live television program.

The algorithm for the operation of companion device 124 will now bediscussed in greater detail with reference to FIG. 3 .

FIG. 3 illustrates an algorithm 300 to be executed by companion device124 in accordance with aspects of the present disclosure.

As shown in FIG. 3 , algorithm 300 starts (S302) and content timinginformation is received (S304). This will be described in greater detailwith reference to FIG. 5 .

FIG. 5 illustrates a Moving Pictures Experts Group (MPEG) data stream500 in accordance with aspects of the present disclosure.

As shown in the figure, data stream 500 includes a plurality of packets,a sample of which is shown as a packet 502. Each packet includes apayload and a header. In this example, packet 502 includes a header 504and a payload 506. Header 504 includes information about payload 506,and additionally includes a presentation time stamp (PTS) 508. Payload506 includes image and audio data. PTS 508 is metadata used to indicatewhen the accompanying image data within payload 506 should be displayed.Media device 120 receives data stream 500 and decodes it to present itto display device 122.

PTS 508 is a sample embodiment of content timing information. In someembodiments, PTS 508 could be replaced with different content timinginformation, non-limiting examples of which include a playback timer, awall timer, and combinations thereof. Media device 120 uses PTS 508 inorder to supply the data in chronological order to display 116.

It should be noted that MPEG data stream 500 is merely representative ofa mechanism to provide content timing information, which in that caseincludes PTS 508 in header 504. However, any known mechanism forproviding content timing information may be used in accordance withaspects of the present disclosure. Another non-limiting example includesusing a transport stream (TS) packet, wherein the PTS is part of thepayload. Using multiple packets, a packetized elementary stream (PES)may be constructed, wherein the PTS would be part of the PES header.

Returning to FIG. 1 , for example, presume that user 128 has decided towatch a film on display device 122. In this example, presume thatservice provider 114 provide the modified content data 105 to mediadevice 120 as an MPEG stream as discussed above with reference to FIG. 5. Controller 410 of media device 120, as referenced in FIG. 4 , isconfigured to execute instructions stored on memory 412, including metadata program 413, causing media device 120 to transmit, via radio 414,PTS 508 to companion device 124. Controller 420 of companion device 124is configured to execute instructions stored on memory 422, includingmeta data program 423, causing companion device 124 to receive PTS 508and recognize PTS 508 as content timing information.

Returning to FIG. 3 , after content timing information is received(S304), the metadata manifest request is automatically transmitted(S306). For example, companion transmit a metadata manifest request toserver device 112. More specifically, after companion device 124analyzes PTS 508, controller 420 will execute instructions stored onmemory 422, including meta data program 423, causing companion device124 to transmit a metadata manifest request to server device 112 (seeS206). The metadata manifest request includes the content timinginformation, which in this example is PTS 508.

Returning to FIG. 3 , after the metadata manifest request is transmitted(S306), the metadata manifest is received (S308). For example, afterserver device 112 receives the metadata manifest request from companiondevice 124, controller 400 of server device 112 will executeinstructions stored on memory 402, including meta data program 403,causing server device 112 to extract the metadata in the metadatamanifest that is associated with PTS 508. In other words, server device112 extracts the supplemental data associated with that specific timeperiod in the movie.

Controller 400 of server device 112 will execute instructions stored onmemory 402, including meta data program 403, causing server device 112to transmit the metadata of the metadata manifest that is associatedwith the content timing information to companion device 124.

Returning to FIG. 3 , after the metadata is received (S308), a functionis performed (S310). In some example embodiments, the function is thedisplay of an icon to user 128. This will be discussed in greater detailwith reference to FIG. 6 .

FIG. 6 illustrates companion device 124. Shown on companion device 124is GUI 430, which contains sample icons 600, 602, and 604.

Returning to FIG. 3 , presume that companion device 124 has received themetadata associated with the content timing information from serverdevice 112. In this example, the metadata associated with the contenttiming information includes cast information data of the cast during thecurrent part of the movie, URL link data for URL links to merchantsselling items or clothing during the current part of the movie, andinstruction data enabling companion device 124 to cause media device 120to perform a trick play during the current part of the movie.

Returning to FIG. 4 , controller 420 will execute instructions stored onmemory 422, including meta data program 423, to cause GUI 430 to displaya multitude of icons for user 128 to interact with, including sampleicons 600, 602, and 604 as shown in FIG. 6 . Further presume that user128 has interacted with sample icon 600, in which case companion device124 will display, via GUI 430, extra information about the sceneassociated with PTS 508 based on the metadata associated with thecontent timing information that includes cast information data of thecast during the current part of the movie.

In some embodiments, companion device 124 can be used to purchase itemsrelated to the program being viewed. For example, presume that user 128is watching an advertisement for a carbonated beverage, and user 128interacts with sample icon 602, as they would like to purchase thecarbonated beverage. Controller 420 will execute instructions stored onmemory 422, including meta data program 423, causing companion device124 to display a list of URL links based on the URL link data during thecurrent part of the movie, to allow user 128 to purchase the item.

In some embodiments, companion device 124 can be used to operate mediadevice 120. For example, presume that user 128 interacts with sampleicon 604, as they would like to pause their content. Controller 420 willexecute instructions stored on memory 422, including meta data program423, causing companion device 124 to enabling companion device 124 tocause media device 120 to perform a trick play during the current partof the movie based on the instruction meta data.

In some embodiments, content timing information may be transmitted frommedia device 112 to companion device 124 very rapidly. For example,presume that user 128 is watching a live show on television. In order tostay up to date, media device 120 will transmit content timinginformation in very short intervals, a non-limiting example of whichbeing 0.5 second intervals. Companion device 124, after requestingmetadata from server device 112, will continuously receive up to datemetadata relating to the program user 128 is viewing. Server device 112will constantly refresh the metadata manifest so that it is up to date.

Returning to FIG. 3 , after the function is performed (S310), algorithm300 stops (S312).

In some embodiments, server device 112 will obtain input data fromcompanion device 124. Server device will analyze the input data to learnthe preferences of user 128 which will make future playback experiencesmore enjoyable. More specifically, controller 420 is configured toexecute instructions stored on memory 422, including meta data program423, causing companion device 124 to memorize input data from user 128via GUI 430 and transmit the input data to server device 112. Controller400 is configured to execute instructions stored on memory 402,including meta data program 403, causing server device 112 to: receivethe input data from companion device 124; analyze the input data; anddevelop user preference data.

While watching something on television, a user may want to knowadditional information about the origins of a scene, personalinformation about an actor, or something else related to the program.Often, a user will have a companion device which they will use to findthe additional information, non-limiting examples of a companion deviceincluding a smart phone, a tablet, etc. Repeatedly pausing the contentto find additional information can be frustrating. Conversely, a usercould also let the program continue to play as they research, but theymay miss an important part of their program as they focus on theircompanion device. There is a need for a mechanism where contentconsumption on the companion device is enhanced, thereby improving theplayback experience of their program.

In accordance with the present disclosure, a user will operate acompanion device while watching content. The media device, whileproviding content to the user through the use of a display device, willperiodically provide the companion device with content timinginformation. The companion device will analyze the content timinginformation and will request metadata from a server device, which storesa metadata manifest associated with content timing information forcontent. The server device will transmit the metadata manifest to thecompanion device. The companion device will then display interactiveicons via a GUI to the user. These icons will allow the user to interactwith information related to the content they are watching.

Thus a system and method in accordance with the present disclosureallows the user to have easy access to additional information relatingto their program, thereby decreasing downtime from pausing andresearching the information manually.

The operations disclosed herein may constitute algorithms that can beeffected by software, applications (apps, or mobile apps), or computerprograms. The software, applications, computer programs can be stored ona non-transitory computer-readable medium for causing a computer, suchas the one or more processors, to execute the operations describedherein and shown in the drawing figures.

The foregoing description of various preferred embodiments have beenpresented for purposes of illustration and description. It is notintended to be exhaustive or to limit the invention to the precise formsdisclosed, and obviously many modifications and variations are possiblein light of the above teaching. The example embodiments, as describedabove, were chosen and described in order to best explain the principlesof the invention and its practical application to thereby enable othersskilled in the art to best utilize the invention in various embodimentsand with various modifications as are suited to the particular usecontemplated. It is intended that the scope of the invention be definedby the claims appended hereto.

What is claimed is:
 1. A companion device for use with a server device,a media device and a display device, the server device having storedtherein a metadata manifest including metadata and time data associatedwith content and being configured to transmit the metadata manifest, themedia device being configured to provide the content to the displaydevice and to provide content timing information associated with thecontent, the display device being configured to display displayed mediabased on the content, the content timing information being additionallyassociated with the time data, said companion device comprising: amemory having instructions stored therein; and a processor configured toexecute the instructions stored in said memory to cause said companiondevice to: receive the content timing information from the media device;transmit a manifest request to the server device based on the contenttiming information; receive the metadata manifest from the serverdevice; and instruct the display to display an icon based on themetadata.
 2. The companion device of claim 1, wherein said processor isconfigured to execute instructions stored in said memory to cause saidcompanion device to receive the content timing information from themedia device as one type of content timing information selected from agroup of content timing information consisting of a presentation timestamp, a playback timer, a wall timer, and combinations thereof.
 3. Thecompanion device of claim 1, further comprising: a display, wherein saidprocessor is configured to execute instructions stored in said memory tocause said companion device to: receive the metadata manifest from theserver device so as to include a plurality of time stamp sections; andinstruct the display to display the icon based on the metadata, and todisplay a second icon based on the metadata.
 4. The companion device ofclaim 1, further comprising: a display, wherein said processor isconfigured to execute instructions stored in said memory to cause saidcompanion device to instruct the display to display an icon based on themetadata.
 5. The companion device of claim 1, wherein said processor isconfigured to execute instructions stored in said memory to cause saidcompanion device to wirelessly transmit the manifest request to theserver device.
 6. The companion device of claim 1, wherein saidprocessor is configured to execute instructions stored in said memory tocause said companion device to transmit the manifest request to theserver device via a wired communication channel.
 7. A method ofoperating a companion device for use with a server device, a mediadevice and a display device, the server device having stored therein ametadata manifest including metadata and time data associated withcontent and being configured to transmit the metadata manifest, themedia device being configured to provide the content to the displaydevice and to provide content timing information associated with thecontent, the display device being configured to display displayed mediabased on the content, the content timing information being additionallyassociated with the time data, said method comprising: receiving, via aprocessor configured to execute instructions stored in a memory, thecontent timing information from the media device; transmitting, via theprocessor, a manifest request to the server device based on the contenttiming information; receiving, via the processor, the content timinginformation from the media device; transmitting, via the processor, amanifest request to the server device based on the content timinginformation; and receiving, via the processor, the metadata manifestfrom the server device.
 8. The method of claim 7, wherein said receivingthe content timing information from the media device comprises receivingthe content timing information from the media device as one type ofcontent timing information selected from a group of content timinginformation consisting of a presentation time stamp, a playback timer, awall timer, and combinations thereof.
 9. The method of claim 7, furthercomprising: receiving the metadata manifest from the server device so asto include a plurality of time stamp sections; and instructing a displayto display the icon based on the metadata, and to display a second iconbased on the metadata.
 10. The method of claim 7, further comprisinginstructing a display to display an icon based on the metadata.
 11. Themethod of claim 7, wherein said transmitting the manifest request to theserver device comprises wirelessly transmitting the manifest request tothe server device.
 12. The method of claim 7, wherein said transmittingthe manifest request to the server device comprises transmitting themanifest request to the server device via a wired communication channel.13. A non-transitory, computer-readable media having computer-readableinstructions stored thereon, the computer-readable instructions beingcapable of being read by a companion device for use with a serverdevice, a media device and a display device, the server device havingstored therein a metadata manifest including metadata and time dataassociated with content and being configured to transmit the metadatamanifest, the media device being configured to provide the content tothe display device and to provide content timing information associatedwith the content, the display device being configured to displaydisplayed media based on the content, the content timing informationbeing additionally associated with the time data, wherein thecomputer-readable instructions are capable of instructing the companiondevice to perform the method comprising: receiving, via a processorconfigured to execute instructions stored in a memory, the contenttiming information from the media device; transmitting, via theprocessor, a manifest request to the server device based on the contenttiming information; receiving, via the processor, the content timinginformation from the media device; transmitting, via the processor, amanifest request to the server device based on the content timinginformation; and receiving, via the processor, the metadata manifestfrom the server device.
 14. The non-transitory, computer-readable mediaof claim 13, wherein the computer-readable instructions are capable ofinstructing the companion device to perform the method, wherein saidreceiving the content timing information from the media device comprisesreceiving the content timing information from the media device as onetype of content timing information selected from a group of contenttiming information consisting of a presentation time stamp, a playbacktimer, a wall timer, and combinations thereof.
 15. The non-transitory,computer-readable media of claim 13, wherein the computer-readableinstructions are capable of instructing the companion device to performthe method, wherein said receiving the metadata manifest from the serverdevice comprises: receiving the metadata manifest from the server deviceas a plurality of time stamp sections; and instructing a display todisplay the icon based on the metadata, and to display a second iconbased on the metadata.
 16. The non-transitory, computer-readable mediaof claim 13, wherein the computer-readable instructions are capable ofinstructing the companion device to perform the method furthercomprising instructing a display to display an icon based on themetadata.
 17. The non-transitory, computer-readable media of claim 13,wherein the computer-readable instructions are capable of instructingthe companion device to perform the method wherein said transmitting themanifest request to the server device comprises wirelessly transmittingthe manifest request to the server device.
 18. The non-transitory,computer-readable media of claim 13, wherein the computer-readableinstructions are capable of instructing the companion device to performthe method wherein said transmitting the manifest request to the serverdevice comprises transmitting the manifest request to the server devicevia a wired communication channel.
 19. A server device for use with ametadata manifest provider and a companion device, the metadata manifestprovider being configured to provide a metadata manifest, the companiondevice being configured to provide a manifest request, the metadatamanifest including metadata and time data associated with content, themanifest request including content timing information, the contenttiming information being associated with the time data, said serverdevice comprising: a memory having instructions stored therein; and aprocessor configured to execute the instructions stored in said memoryto cause said server device to: receive the metadata manifest; receivethe manifest request; and transmit a portion of the metadata, based onthe content timing information, to the companion device.
 20. The serverdevice of claim 19, wherein the content timing information comprises onetype of content timing information selected from a group of contenttiming information consisting of a presentation time stamp, a playbacktimer, a wall timer, and combinations thereof.
 21. The server device ofclaim 19, wherein said processor is configured to execute instructionsstored in said memory to cause said server device to wirelessly transmitthe portion of the metadata to the companion device.
 22. The serverdevice of claim 19, wherein said processor is configured to executeinstructions stored in said memory to cause said server device totransmit the portion of the metadata to the companion device via a wiredcommunication channel.
 23. A method of operating a server device with ametadata manifest provider and a companion device, the metadata manifestprovider being configured to provide a metadata manifest, the companiondevice being configured to provide a manifest request, the metadatamanifest including metadata and time data associated with content, themanifest request including content timing information, the contenttiming information being associated with the time data, said methodcomprising: receiving, via a processor configured to executeinstructions stored in a memory, the content timing information from themedia device; receiving, via a processor configured to executeinstructions stored in a memory, the metadata manifest; receiving, viathe processor, the manifest request; and transmitting, via theprocessor, a portion of the metadata, based on the content timinginformation, to the companion device.
 24. The method of claim 23,wherein the content timing information comprises one type of contenttiming information selected from a group of content timing informationconsisting of a presentation time stamp, a playback timer, a wall timer,and combinations thereof.
 25. The method of claim 23, wherein saidtransmitting the portion of the metadata comprises wirelesslytransmitting the portion of the metadata to the server companion device.26. The method of claim 23, wherein said transmitting the portion of themetadata comprises transmitting the portion of the metadata to thecompanion device via a wired communication channel.
 27. Anon-transitory, computer-readable media having computer-readableinstructions stored thereon, the computer-readable instructions beingcapable of being read by server device for use with a metadata manifestprovider and a companion device, the metadata manifest provider beingconfigured to provide a metadata manifest, the companion device beingconfigured to provide a manifest request, the metadata manifestincluding metadata and time data associated with content, the manifestrequest including content timing information, the content timinginformation being associated with the time data, wherein thecomputer-readable instructions are capable of instructing the serverdevice to perform the method comprising: receiving, via a processorconfigured to execute instructions stored in a memory, the contenttiming information from the media device; receiving, via a processorconfigured to execute instructions stored in a memory, the metadatamanifest; receiving, via the processor, the manifest request; andtransmitting, via the processor, a portion of the metadata, based on thecontent timing information, to the companion device.
 28. Thenon-transitory, computer-readable media of claim 27, wherein thecomputer-readable instructions are capable of instructing the serverdevice to perform the method, wherein the content timing informationcomprises one type of content timing information selected from a groupof content timing information consisting of a presentation time stamp, aplayback timer, a wall timer, and combinations thereof.
 29. Thenon-transitory, computer-readable media of claim 27, wherein thecomputer-readable instructions are capable of instructing the serverdevice to perform the method, wherein said transmitting the portion ofthe metadata comprises wirelessly transmitting the portion of themetadata to the server companion device.
 30. The non-transitory,computer-readable media of claim 27, wherein the computer-readableinstructions are capable of instructing the server device to perform themethod wherein said transmitting the portion of the metadata comprisestransmitting the portion of the metadata to the companion device via awired communication channel.